# 1、range函数 创建一个生成一系列整数的可迭代对象（整数序列生成器）
# 语法：range([开始点]，[结束点],[间隔])
# 口诀：包头不包尾


# （1）.计算1-100的所有奇数之和
# 写法1
my_sum1 = 0
for n in range(1, 100, 2):
    my_sum1 += n
print(f'结果是：{my_sum1}')

# 写法2
my_sum2 = 0
for n in range(100):
    if n % 2 != 0:
        my_sum2 += n
print(f'结果是：{my_sum2}')

# 写法3
# break和continue都是用来控制循环结构，主要作用是 结束循环
# break 跳出一个循环体或者完全结束一个循环
# continue  跳过本次循环体中剩下的尚未执行的语句，立即进行下一次的循环条件判定

my_sum3 = 0
n = 0
while True:
    n += 1
    if n > 100:  # 超出循环范围,则推出循环！！！
        break
    if n % 2 != 0:
        my_sum3 += n
print(f'结果是：{my_sum3}')

# 写法4
my_sum4 = 0

for n in range(1, 100):
    if n % 2 == 0:  # 当前的n为偶数，不做计算，退出当次循环，继续下一个数字
        continue
    my_sum4 += n
print(f'结果是：{my_sum4}')

# （2）.打印九九乘法表
# 写法1
for i in range(1, 10):
    for j in range(1, i + 1):
        print(f'{j}*{j}={j * i}', end='\t')
    print()

# 写法2
i = 1  # 第i行
while i <= 9:
    j = 1
    while True:
        if j > i:  # j>i时，内层的while循环就要结束！！！
            break
        # 把改行的所有算式输出
        print(f'{j}*{i}={j * i}', end='\t')
        j += 1
    i += 1
    print()  # 每行输出一个换行


# 循环中的else
# 循环可以和else配合使用，else下方缩进的代码是指：当循环正常结束之后要执行的代码
# 如果是break终止循环的情况，else下方缩进的代码将不会执行！！！
'''
while 条件：
    条件成立，重复执行的代码
else：
    循环正常结束之后要执行的代码
    
    
    
for i in 序列：
    重复执行的代码
else:
    循环正常结束之后要执行的代码s
'''